<?php 
/**
 * 
 */
// Hämtar filer
require_once ('./Model/LoginHandler.php');
require_once ('./View/LoginView.php');
class LoginController 
{
		// funktionen som hämtas i index
	public function DoControll($instanceHandler)
	{
		
		// skapar instanser av klasser från inlänkade filer 
		//$instanceHandler = new LoginHandler($dbc);
		$instanceView = new LoginView();
		// Gör första output 
		$outPut = "";
		// Kollar om användaren är inloggad 
		if ($instanceView ->isCookieSet()== true)
		{
			$instanceHandler->DoLogin($_COOKIE[$instanceView->uName], $_COOKIE[$instanceView->pWord]);
		}
		if ($instanceHandler -> IsLoggedIn())
		{
			// skickar ett meddalande 
			//$mess = $instanceView -> LoggInMess($instanceView::USER_LOGGED_IN);
			// kollar om man försöker logga ut 
			if ($instanceView -> TriedToLogOut())
			{
				// loggar ut användaren och tar bort cookies 
				$instanceHandler->DoLogout();

				// Raderar det förra meddelandet för att ersätta det med en uppdaterad vy.  
				//$outPut = $instanceView -> DologinBox();
				$outPut .= $instanceView -> LoggInMess(LoginView::DO_LOGG_OUT);
				$instanceView->eatCooks();
			}
			//else
			//{
				// skrver ut en loggut knapp
			//	$outPut .= $instanceView -> DoLogoutBox(); 
			//}
		}
		else
		{
			$outPut .= $instanceView -> LoggInMess(LoginView::DO_LOGG_IN);
			//$loginBox = $instanceView -> DologinBox();
			// Kollar om du tryckt på login 
			if($instanceView -> TriedToLogIn())
			{
				// Skickar in namn och lösenord som skrivits och kollar om det går igenom Loginhandlers Metod 
				if($instanceHandler->DoLogin($instanceView->GetUserName(), $instanceView->GetPassword()))
				{
					if ($instanceView -> GetRemember()==true)
					{
						// Spara användar namnet och lösen ordet
						$instanceView ->doCookie($instanceView->GetUserName(),$instanceView->GetPassword());
					}
					
					//$outPut .= $instanceView->DoLogoutBox();
					// Kollar om man checkat i checkboxen "remeber me" 

				}
				else 
				{
					// var det fel användar uppgifter skrivs ett felmeddelande ut 
					$outPut .= $instanceView -> LoggInMess(LoginView::USER_PROB);
					//$outPut .= $instanceView -> DologinBox();
				}
			}
		}
		if ($instanceHandler->IsLoggedIn())
		{
			$outPut = $instanceView -> LoggInMess(LoginView::USER_NOW_LOGGED);
			$outPut .= $instanceView ->DoLogoutBox();
		}
		else
		{
			$outPut .= $instanceView->DologinBox();
			$outPut .= $instanceView->LoggInMess(LoginView::USER_NOT_LOGGED);

		}
		return $outPut;
	}

}